/*对selectHelper进行面向对象的重写
*注意：1、对于Dom的操作，一定要等到该对象被加载到dom中以后才能执行
*     2、在使用this的时候，一定要确认当前的this是指的哪个对象
*	  3、在给div设置滚动条时，要指定其高度才会起作用
*/
SelectHelper = function(config){
	this.url = config.url;
	this.title = config.title;
	this.success = config.success;
	this.init();
}
//创建selectHelper的相关方法
SelectHelper.prototype = {
	//初始化
	init : function () {
		//如果已经被初始化过，则将原来的删除，重新进行初始化
		if($("#selectDiv").attr("id")!=null){
			$("#selectDiv").remove();
		}
		var selectHelper = this;
		
		var div = '<div id="selectDiv">';
			div += '<div id="head"><span class="title">'+this.title+'</span></div>';
			div += '<div id="toolBar"></div>';
			div += '<div id="selectContent"></div>';
			div += '</div>';
		//将div添加到body中
		$(div).appendTo('body');
		//添加关闭按钮
		var closeBar = '<dl class="closeBar"><dt class="close" id="closer" style="cursor:hand;"></dt></dl>';
		$(closeBar).appendTo("#head");
		$("#closer").click( function () {
		//点击按钮时将该DIV从dom中删除
		$("#selectDiv").remove(); 
		}); 
		var left = ($(document.body).width())/2-250;
		var top = ($(document.body).height())/2-200;
		$("#selectDiv").css({'top':top+'px','left':left+'px'});
		
		selectHelper.toolBar();
		selectHelper.createSelect(selectHelper.url);
	},
	toolBar : function(){
		var selectHelper = this;
		//创建提取按钮
		var pickUp = '<dl id="pickUp" style="cursor:hand;"><dt class="cancel"></dt><dd>提取</dd></dl>';
		$(pickUp).appendTo('#toolBar');
		$("#pickUp").click(function(){
			//得到所有的已经选择的对象
			var selectList = $("#selectContent").find("input[type='checkbox'][@checked]");
			var val = "";
			selectList.each(function(){
				val = $(this).val()+"$_$"+val;
			});
			selectHelper.success(val);
			$("#selectDiv").remove();
		});
	},
	createSelect:function(url){
		$.ajax({
			url:url,
			type:'post',
			dataType:'json',
			success:function(data){
			var returnContent = data.returnContent;
			var viewDiv = '<div id="viewDiv"></div>';
			$(viewDiv).appendTo("#selectContent");
			var viewTable = '<table id="viewTable" class="viewTable"></table>'
			$(viewTable).appendTo("#selectContent");
			//因为前台要满足统一性，后台返回的数据格式为ID@_@Name
			$(returnContent).appendTo("#viewTable");
			}
		});
	}
}